Ok. I'll have another try....
On closing the NamePicker dialog, the (client and serverside) onChange event of the (hidden) input it is linked to is called. Perhaps you could write a function in that event to lookup the value from column2 you are looking for. It might look like this:
<xp:inputHidden id="inputText1">
<xp:eventHandler event="onchange" submit="true" refreshMode="complete">
<xp:this.action><![CDATA[#{javascript:print("onchange");
//get the value the user selected in the namepicker
var selectedValue = this.getParent().getValue()
//get the view name used in the namepicker
var dataProvider = getComponent("namePicker1").getDataProvider();
var vw = dataProvider.getViewName();
//name of the column to use to retrieve an alias for the selected name
var aliasColumn = "id";
//lookup the alias
var alias = @DbLookup(@DbName(), vw, selectedValue, aliasColumn);
//set the alias in field inputText2
getComponent("inputText2").setValue(alias);
}]]></xp:this.action>
</xp:eventHandler>
</xp:inputHidden>
Hope this helps.
Mark